package com.talkweb.ncfw.security;

import org.springframework.beans.factory.InitializingBean;

import com.talkweb.ncfw.data.IUserSession;
import com.talkweb.ncfw.security.permission.IFuncPermissionManager;
import com.talkweb.ncfw.utils.AssertUtils;
import com.talkweb.ncfw.utils.StringUtils;

/**
 * <p>文件名称: SecurityManagerImpl.java</p>
 * <p>文件描述: 安全管理实现</p>
 * <p>版权所有: 版权所有(C)2010</p>
 * <p>内容摘要: 简要描述本文件的内容，包括主要模块、函数及能的说明</p>
 * <p>其他说明: 其它内容的说明</p>
 * <p>完成日期: 2011-10-23</p>
 * <p>修改记录1:</p>
 * <pre>
 *    修改日期:
 *    修 改 人:
 *    修改内容:
 * </pre>
 * <p>修改记录2：…</p>
 * @author  Wuqingming
 */
public class SecurityManagerImpl implements ISecurityManager, InitializingBean {
	private IFuncPermissionManager funcPermissionManager;

	public boolean hasAccessPermission(IUserSession userSession, String url) {
		if (StringUtils.isEmpty(url)) {
			throw new IllegalArgumentException("url can not be null");
		}
		return false;
	}

	public boolean hasFuncPermission(IUserSession userSession, String funccode) {
		return this.funcPermissionManager.hasFuncPermission(userSession, funccode);
	}

	public void afterPropertiesSet() throws Exception {
		AssertUtils.notNull(funcPermissionManager, "funcPermissionManager can not be null");
	}
	
	
}

